1. Field of the Invention
The present invention relates generally to a data processing system. More specifically, the present invention relates to a method, apparatus and computer program product for automatically generating executable components from a business process model.
2. Description of the Related Art
The role of information technologies (IT) in the enterprise is to support the business operations of the enterprise. Business subject matter experts (SMEs) document business operations using business process models. Business process models prescribe the activities that need to be performed as part of a business operation, the sequencing of these activities, and the input and output data of these activities. While business process models are good for documenting business operations, creating computer programs that support these operations has always been a challenge.
Existing approaches to IT-enabling a business process to take one of the following two paths: (1) business process models are used merely as requirements based on which information technologies solutions are manually designed and implemented either by custom coding from scratch or by customizing and integrating legacy applications and packaged software; or (2) business process models are automatically converted into workflow definitions which are deployed on workflow engines and augmented with custom code. The second approach is not used widely today due to a number of severe drawbacks as enumerated below.
First, as business processes become complex and large, workflow approach becomes increasingly difficult, if not impossible, to implement, as the overall performance of the system degrades substantially and the maintenance of the resulting monolithic solution becomes extremely hard. Next, commonly required features such as backward navigation, event-driven behavior, and conversational client interaction are very difficult to support in the workflow approach. The cost of supporting these features adds more complexity, which further complicates the first issue.
As another example of a severe drawback, solutions often need sophisticated, user-friendly human interfaces, which are not readily supported by the workflow approach, which needs expensive manual tweaking of the code. Also, due to the issues enumerated above, business process models, as created by business analysts, cannot be transformed directly into workflow models. Instead, significant effort is needed to tweak the business process models into a form that is suitable for transformation into workflow models.
Moreover, no accountability exists for an end-to-end process and a lack of focus on core processes that drive customer value. Rather, the focus is on “micro” processes isolated within the borders of business function lines, which serves to distract from focusing on the end-to-end process.
Due to these drawbacks, the second approach is not used widely in real customer engagements leading to the first approach as the only alternative. However, the first approach leads to a gap between the business process models and information technologies solutions resulting in poor quality of the information technologies solutions with respect to the information technologies solutions' ability to support business processes, poor responsiveness of the information technologies solutions to business process changes, and inefficiency in the overall development processes.
In response to this situation, another process-modeling paradigm based on the concept of business artifacts has been proposed. According to this paradigm, a business artifact is an identifiable, self-describing unit-of-information through which business stockholders add value to the business. This new paradigm has been successfully tested through customer engagements. However, several problems remain with this paradigm. First, the concept of business artifacts is still informal and the definition of a business artifact is still at a conceptual level. Second, in this paradigm, the key is to discover the right business artifacts. The current practice identifies business artifacts through intense consulting sessions. Those sessions are time consuming and demand consulting skills that typically vary by industry.
Therefore, while improvements have been made in the area of transformable business process models, problems remain.